using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
using Etna.Exportaciones.En;
using Etna.Exportaciones.Ad;

namespace Etna.Exportaciones.Rn
{
   public class RnFolioDespacho:RnGeneral
   {
      public EnFolioDespacho Leer(int pidFolioDespacho)
      {
         EnFolioDespacho oEnFolioDespacho = null;

         using (SqlConnection con = new SqlConnection(CadenaConexion))
         {
            try
            {
               con.Open();
               AdFolioDespacho oAdFolioDespacho = new AdFolioDespacho();
               oEnFolioDespacho = oAdFolioDespacho.Leer(pidFolioDespacho, con);
            }
            catch (SqlException ex)
            {
               oEnFolioDespacho = null;
            }
         }
         return oEnFolioDespacho;
      }

      // Proceso para insertar un registro nuevo
      public bool Insertar(EnFolioDespacho poEnFolioDespacho)
      {
          bool Resultado = false;

          using (SqlConnection con = new SqlConnection(CadenaConexion))
          {

             try
              {
                  con.Open();
                  AdFolioDespacho oAdFolioDespacho = new AdFolioDespacho();
                  Resultado = oAdFolioDespacho.Insertar(poEnFolioDespacho, con);
              }
              catch (SqlException ex)
              {
                  Resultado = false;
              }
          }
          return Resultado;
      }
      // Proceso para modificar un registro existente
      public bool Modificar(EnFolioDespacho poEnFolioDespacho)
      {
          bool Resultado = false;

          using (SqlConnection con = new SqlConnection(CadenaConexion))
          {

             try
              {
                  con.Open();
                  AdFolioDespacho oAdFolioDespacho = new AdFolioDespacho();
                  Resultado = oAdFolioDespacho.Modificar(poEnFolioDespacho, con);
              }
              catch (SqlException ex)
              {
                  Resultado = false;
              }
          }
          return Resultado;
      }
      public List<EnFolioDespacho> Listar(int pidFolioDespacho)
      {
         List<EnFolioDespacho> loEnFolioDespacho = null;

         using (SqlConnection con = new SqlConnection(CadenaConexion))
         {
            try
            {
               con.Open();
               AdFolioDespacho oAdFolioDespacho = new AdFolioDespacho();
               loEnFolioDespacho = oAdFolioDespacho.Listar(pidFolioDespacho, con);
            }
            catch (SqlException ex)
            {
               loEnFolioDespacho = null;
            }
         }
         return loEnFolioDespacho;
      }

   }
}
